package com.op.crm.webapp.action.security;

import java.util.List;

import com.op.crm.persist.model.Action;
import com.op.crm.persist.model.Group;
import com.op.crm.persist.model.Role;
import com.op.crm.persist.model.User;
import com.op.crm.service.SecurityService;
import com.op.crm.util.BaseAction;
import com.opensymphony.xwork2.ModelDriven;

public abstract class SecurityFactory<T> extends BaseAction<T>{
	private static final long serialVersionUID = 1L;
	
	protected SecurityService securityService = null;
	
	protected User userParam;
	
	protected Action actionParam;
	protected List<String> rolesParam;
	
	protected Role roleParam;
	protected List<String> usersParam;
	protected List<String> actionsParam;
	
	protected Group groupParam;
	
	protected List<Action> masterActions;
	protected List<Role> masterRoles;
	
	protected List<Action> fromActionsParam;
	

	public SecurityService getSecurityService() {
		return securityService;
	}

	public void setSecurityService(SecurityService securityService) {
		this.securityService = securityService;
	}

	public User getUserParam() {
		return userParam;
	}

	public void setUserParam(User userParam) {
		this.userParam = userParam;
	}

	public Action getActionParam() {
		return actionParam;
	}

	public void setActionParam(Action actionParam) {
		this.actionParam = actionParam;
	}

	public List<String> getRolesParam() {
		return rolesParam;
	}

	public void setRolesParam(List<String> rolesParam) {
		this.rolesParam = rolesParam;
	}

	public Role getRoleParam() {
		return roleParam;
	}

	public void setRoleParam(Role roleParam) {
		this.roleParam = roleParam;
	}

	public List<String> getUsersParam() {
		return usersParam;
	}

	public void setUsersParam(List<String> usersParam) {
		this.usersParam = usersParam;
	}

	public List<String> getActionsParam() {
		return actionsParam;
	}

	public void setActionsParam(List<String> actionsParam) {
		this.actionsParam = actionsParam;
	}

	public Group getGroupParam() {
		return groupParam;
	}

	public void setGroupParam(Group groupParam) {
		this.groupParam = groupParam;
	}

	public List<Action> getMasterActions() {
		return masterActions;
	}

	public void setMasterActions(List<Action> masterActions) {
		this.masterActions = masterActions;
	}

	public List<Role> getMasterRoles() {
		return masterRoles;
	}

	public void setMasterRoles(List<Role> masterRoles) {
		this.masterRoles = masterRoles;
	}

	public List<Action> getFromActionsParam() {
		return fromActionsParam;
	}

	public void setFromActionsParam(List<Action> fromActionsParam) {
		this.fromActionsParam = fromActionsParam;
	}
}
